diff --git a/include/cmd_mem.h b/include/cmd_mem.h
new file mode 100644
index 0000000..aa0c540
--- /dev/null
+++ b/include/cmd_mem.h
@@ -0,0 +1,112 @@
+/*
+ * (C) Copyright 2000
+ * Wolfgang Denk, DENX Software Engineering, wd@denx.de.
+ *
+ * See file CREDITS for list of people who contributed to this
+ * project.
+ *
+ * This program is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU General Public License as
+ * published by the Free Software Foundation; either version 2 of
+ * the License, or (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 59 Temple Place, Suite 330, Boston,
+ * MA 02111-1307 USA
+ */
+
+/*
+ * Memory Functions
+ */
+#ifndef	_CMD_MEM_H
+#define _CMD_MEM_H
+
+#if (CONFIG_COMMANDS & CFG_CMD_MEMORY)
+#define CMD_TBL_MD	MK_CMD_TBL_ENTRY(					\
+	"md",		2,	3,	1,	do_mem_md,			\
+	"md      - memory display\n",						\
+	"[.b, .w, .l] address [# of objects]\n    - memory display\n"		\
+),
+#define CMD_TBL_MM	MK_CMD_TBL_ENTRY(					\
+ 	"mm",		2,	2,	1,	do_mem_mm,			\
+	"mm      - memory modify (auto-incrementing)\n",			\
+	"[.b, .w, .l] address\n"						\
+	"    - memory modify, auto increment address\n"				\
+),
+#define CMD_TBL_NM	MK_CMD_TBL_ENTRY(					\
+	"nm",		2,	2,	1,	do_mem_nm,			\
+	"nm      - memory modify (constant address)\n",				\
+	"[.b, .w, .l] address\n    - memory modify, read and keep address\n"	\
+),
+#define CMD_TBL_MW	MK_CMD_TBL_ENTRY(					\
+	"mw",		2,	4,	1,	do_mem_mw,			\
+	"mw      - memory write (fill)\n",					\
+	"[.b, .w, .l] address value [count]\n    - write memory\n"		\
+),
+#define	CMD_TBL_CP	MK_CMD_TBL_ENTRY(					\
+	"cp",		2,	4,	1,	do_mem_cp,			\
+	"cp      - memory copy\n",						\
+	"[.b, .w, .l] source target count\n    - copy memory\n"			\
+),
+#define	CMD_TBL_CMP	MK_CMD_TBL_ENTRY(					\
+	"cmp",		3,	4,	1,	do_mem_cmp,			\
+	"cmp     - memory compare\n",						\
+	"[.b, .w, .l] addr1 addr2 count\n    - compare memory\n"		\
+),
+#define	CMD_TBL_CRC	MK_CMD_TBL_ENTRY(					\
+	"crc32",	3,	4,	1,	do_mem_crc,			\
+	"crc32   - checksum calculation\n",					\
+	"address count [addr]\n    - compute CRC32 checksum [save at addr]\n"	\
+),
+#define CMD_TBL_BASE	MK_CMD_TBL_ENTRY(					\
+	"base",		2,	2,	1,	do_mem_base,			\
+	"base    - print or set address offset\n",				\
+	"\n    - print address offset for memory commands\n"			\
+	"base off\n    - set address offset for memory commands to 'off'\n"	\
+),
+/*
+ * Require full name for "loop" and "mtest" because these are infinite loops!
+ */
+#define CMD_TBL_LOOP	MK_CMD_TBL_ENTRY(					\
+	"loop",		4,	3,	1,	do_mem_loop,			\
+	"loop    - infinite loop on address range\n",				\
+	"[.b, .w, .l] address number_of_objects\n"				\
+	"    - loop on a set of addresses\n"					\
+),
+#define CMD_TBL_MTEST	MK_CMD_TBL_ENTRY(					\
+	"mtest",	5,	4,	1,	do_mem_mtest,			\
+	"mtest   - simple RAM test\n",						\
+	"[start [end [pattern]]]\n"						\
+	"    - simple RAM read/write test\n"					\
+),
+int do_mem_md    (cmd_tbl_t *cmdtp, int flag, int argc, char *argv[]);
+int do_mem_mm    (cmd_tbl_t *cmdtp, int flag, int argc, char *argv[]);
+int do_mem_nm    (cmd_tbl_t *cmdtp, int flag, int argc, char *argv[]);
+int do_mem_mw    (cmd_tbl_t *cmdtp, int flag, int argc, char *argv[]);
+int do_mem_cp    (cmd_tbl_t *cmdtp, int flag, int argc, char *argv[]);
+int do_mem_cmp   (cmd_tbl_t *cmdtp, int flag, int argc, char *argv[]);
+int do_mem_crc   (cmd_tbl_t *cmdtp, int flag, int argc, char *argv[]);
+int do_mem_base  (cmd_tbl_t *cmdtp, int flag, int argc, char *argv[]);
+int do_mem_loop  (cmd_tbl_t *cmdtp, int flag, int argc, char *argv[]);
+int do_mem_mtest (cmd_tbl_t *cmdtp, int flag, int argc, char *argv[]);
+
+#else
+#define CMD_TBL_MD
+#define CMD_TBL_MM
+#define CMD_TBL_NM
+#define CMD_TBL_MW
+#define CMD_TBL_CP
+#define CMD_TBL_CMP
+#define CMD_TBL_CRC
+#define CMD_TBL_BASE
+#define CMD_TBL_LOOP
+#define CMD_TBL_MTEST
+#endif	/* CFG_CMD_MEMORY */
+
+#endif	/* _CMD_MEM_H */
